Функція GETSUBSTR() призначена для відбору частини тексту по заданому роздільнику.
Код функції GETSUBSTR розбиває текст на масив по заданому розділювачу та повертає елемент даного масиву згідно з вказаним порядковим номером.
Нижче наведений код макросу для створення користувацької функції GETSUBSTR, яка може розбивати текст на частини та отримувати будь-який його елемент в програмі LibreOffice Calc.
Щоби додати нову функцію, відкрийте меню Tools - Macros - Edit Macros..., виберіть Module1 і скопіюйте наведений нижче текст до модуля:
Function GETSUBSTR(Txt, Delimiter, n) As String
Dim txtArray As Variant
If Txt = "" Then Exit Function
txtArray = Split(Txt, Delimiter)
maxExt = UBound(txtArray)
If n >= 0 Then
normExt = n - 1
Else
normExt = maxExt + n + 1
EndIf
extToFind = Max(Min(maxExt, normExt), 0)
GETSUBSTR = txtArray(extToFind)
End Function
Потім, закрийте Macro Editor, поверніться до LibreOffice Calc та використайте нову функцію в будь-якій клітинці.
Ви також можете скористатись функцією GETSUBSTR() встановивши безкоштовне розширення YouLibreCalc.oxt або його повнофункціональну версію YLC_Utilities.oxt.
Після цього, дана функція буде доступна у всіх файлах, які будуть відкриті в LibreOffice Calc.